@layer utilities {

  /*!
 * Waves v0.7.6  效果不对??
 * http://fian.my.id/Waves 
 */
  .waves-effect {
    -webkit-tap-highlight-color: transparent;
    @apply relative cursor-pointer inline-block overflow-hidden select-none;
  }

  .waves-effect .waves-ripple {
    width: 6.25rem;
    /* 100px */
    height: 6.25rem;
    margin-top: -3.125rem;
    /* 50px */
    margin-left: -3.125rem;
    background: rgba(0, 0, 0, 0.2);
    background: radial-gradient(rgba(0, 0, 0, 0.2) 0, rgba(0, 0, 0, 0.3) 40%, rgba(0, 0, 0, 0.4) 50%, rgba(0, 0, 0, 0.5) 60%, rgba(255, 255, 255, 0) 70%);
    transition: all 0.5s ease-out;
    transition-property: transform, opacity;
    /* -webkit-transform: scale(0) translate(0, 0);
  -moz-transform: scale(0) translate(0, 0);
  -ms-transform: scale(0) translate(0, 0);
  -o-transform: scale(0) translate(0, 0); */
    transform: scale(0) translate(0, 0);
    @apply absolute rounded-full opacity-0 pointer-events-none;
  }

  .waves-effect.waves-light .waves-ripple {
    background: rgba(255, 255, 255, 0.4);
    background: radial-gradient(rgba(255, 255, 255, 0.2) 0, rgba(255, 255, 255, 0.3) 40%, rgba(255, 255, 255, 0.4) 50%, rgba(255, 255, 255, 0.5) 60%, rgba(255, 255, 255, 0) 70%);
  }

  .waves-effect.waves-classic .waves-ripple {
    background: rgba(0, 0, 0, 0.2);
  }

  .waves-effect.waves-classic.waves-light .waves-ripple {
    background: rgba(255, 255, 255, 0.4);
  }

  .waves-effect.waves-red .waves-ripple {
    background-color: rgba(244, 67, 54, 0.7);
  }

  .waves-effect.waves-yellow .waves-ripple {
    background-color: rgba(255, 235, 59, 0.7);
  }

  .waves-effect.waves-orange .waves-ripple {
    background-color: rgba(255, 152, 0, 0.7);
  }

  .waves-effect.waves-purple .waves-ripple {
    background-color: rgba(156, 39, 176, 0.7);
  }

  .waves-effect.waves-green .waves-ripple {
    background-color: rgba(76, 175, 80, 0.7);
  }

  .waves-effect.waves-teal .waves-ripple {
    background-color: rgba(0, 150, 136, 0.7);
  }

  .waves-notransition {
    transition: none !important;
  }

  .waves-button,
  .waves-circle {
    transform: translateZ(0);
    -webkit-mask-image: -webkit-radial-gradient(circle, white 100%, black 100%);
  }

  .waves-button,
  .waves-button:hover,
  .waves-button:visited,
  .waves-button-input {
    outline: none;
    color: inherit;
    /* border: none; */
    z-index: 1;
    font-size: 1em;
    line-height: 1em;
    @apply whitespace-nowrap align-middle cursor-pointer border-none outline-none bg-transparent text-center no-underline;
  }

  .waves-button {
    padding: 0.85em 1.1em;
    border-radius: 0.2em;
  }

  .waves-button-input {
    padding: 0.85em 1.1em;
    @apply m-0;
  }

  .waves-input-wrapper {
    border-radius: 0.2em;
    @apply align-bottom;
  }

  .waves-input-wrapper.waves-button {
    @apply p-0;
  }

  .waves-input-wrapper .waves-button-input {
    z-index: 1;
    @apply relative top-0 left-0;
  }

  .waves-circle {
    width: 2.5em;
    height: 2.5em;
    line-height: 2.5em;
    @apply text-center rounded-full;
  }

  .waves-float {
    -webkit-mask-image: none;
    box-shadow: 0px 1px 1.5px 1px rgba(0, 0, 0, 0.12);
    transition: all 300ms;
  }

  .waves-float:active {
    box-shadow: 0px 8px 20px 1px rgba(0, 0, 0, 0.3);
  }

  .waves-block {
    @apply block;
  }
}